Software that controls the operation of a mobile computing device commonly comes from many different sources. The variety of mobile computing device software may come from the device manufacturer and from OEMs that provide additional drivers and applications to the mobile computing device. The different software must operate well together or errors will result during device operation. Unfortunately, all of the software is commonly not loaded to the device until just before the device is shipped from the manufacturer. The interaction of the different software is often not subject to thorough testing procedures before being shipped to customers. Sometimes the error may not be detected until the mobile computing device is used in the field.
Many times, the user must contact the original equipment manufacturer (OEM) or mobile communication service provider to correct software errors. OEMs and service providers incur significant costs due to help desk calls by users. OEMs and service providers prefer to provide software patches to correct errors in the field rather than have users bring their inoperative mobile computing devices to a retail outlet for service or exchange. Software patches sent to the mobile computing device in the field minimize costs incurred by providing direct customer service without face-to-face interaction with the customer. Customer satisfaction is also maintained because the user need not spend time addressing the defective mobile computing device.
Software patches seek to change the software as little as possible when providing a software fix. If a user does not invoke a particular application, even though there is a problem with the application, a fix need not be provided to the user's device. However, OEMs and service providers have no way of knowing which applications a user does or does not invoke on the device. Thus, whenever a significant application error occurs during processing, all users are provided with a fix whether or not the users invoke the application on the device.